﻿



using System; 
using System.Collections;
using System.Collections.Generic ;
using System.Runtime.Serialization;

namespace ufida.u9.ait.openapi
{
	/// <summary>
	/// 销售合同行DTO DTO :REST自定义的数据传输类型 
	/// 
	/// </summary>
	[DataContract(Namespace = "ufida.u9.ait.openapi")]
	[Serializable]
	public partial class SCLineAITDTOData  
	{
		/// <summary>
		/// Default Constructor
		/// </summary>
		public SCLineAITDTOData()
		{
			initData();
		}
		private void initData()
		{
		
		
		
		
		
		
		
		
					DocLineNo= 0; 
				
		
		
		
		
		
					ContactQtyPU=0m; 
					OrderPrice=0m; 
					TotalMnyTC=0m; 
		

			//调用默认值初始化服务进行配置方式初始化
			UFSoft.UBF.Service.DTOService.InitConfigDefault(this);
		}
		[System.Runtime.Serialization.OnDeserializing]
		internal void OnDeserializing(System.Runtime.Serialization.StreamingContext context)
		{
			 initData();
		}
		#region Do SerializeKey -ForDTODataType
		//只为处理集合型EntityKey。原因集合型EntityKey由于使用臫的集合对象，无法实现数据共享.-UBF专用.
		public void DoSerializeKeyList(IDictionary dict)
		{
			if (dict == null ) dict = new Hashtable() ;
			if (dict[this] != null)
				return ;
			dict[this] = this;
	        			if (this.SaleContractAITDTO != null) 
			{
				this.SaleContractAITDTO.DoSerializeKeyList(dict);
			}
	        			if (this.TradeUOM != null) 
			{
				this.TradeUOM.DoSerializeKeyList(dict);
			}
	        			if (this.TaxSchedule != null) 
			{
				this.TaxSchedule.DoSerializeKeyList(dict);
			}
	        			if (this.SupplyOrg != null) 
			{
				this.SupplyOrg.DoSerializeKeyList(dict);
			}
	        	        			if (this.ShipperOrg != null) 
			{
				this.ShipperOrg.DoSerializeKeyList(dict);
			}
	        			if (this.PriceUOM != null) 
			{
				this.PriceUOM.DoSerializeKeyList(dict);
			}
	        			if (this.ItemCategory != null) 
			{
				this.ItemCategory.DoSerializeKeyList(dict);
			}
	        	        			if (this.CurrentOrg != null) 
			{
				this.CurrentOrg.DoSerializeKeyList(dict);
			}
	        			if (this.BillToSite != null) 
			{
				this.BillToSite.DoSerializeKeyList(dict);
			}
	        			if (this.ItemInfo != null) 
			{
				this.ItemInfo.DoSerializeKeyList(dict);
			}
	        	        	        			if (this.Project != null) 
			{
				this.Project.DoSerializeKeyList(dict);
			}
	        	        	        	        			if (this.DescFlexField != null) 
			{
				this.DescFlexField.DoSerializeKeyList(dict);
			}

		}
		#endregion 
		/// <summary>
		/// Constructor Full Argument
		/// </summary>
		public SCLineAITDTOData(  ufida.u9.ait.openapi.SaleContractAITDTOData saleContractAITDTO  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData tradeUOM  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData taxSchedule  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData supplyOrg  , System.String startDate  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData shipperOrg  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData priceUOM  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData itemCategory  , System.Int32 docLineNo  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData currentOrg  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData billToSite  , ufida.u9.ait.openapi.CopyOfItemInfoData itemInfo  , System.String itemDesc  , System.String memo  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData project  , System.Decimal contactQtyPU  , System.Decimal orderPrice  , System.Decimal totalMnyTC  , ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData descFlexField  )
		{
			initData();
			this.SaleContractAITDTO = saleContractAITDTO;
			this.TradeUOM = tradeUOM;
			this.TaxSchedule = taxSchedule;
			this.SupplyOrg = supplyOrg;
			this.StartDate = startDate;
			this.ShipperOrg = shipperOrg;
			this.PriceUOM = priceUOM;
			this.ItemCategory = itemCategory;
			this.DocLineNo = docLineNo;
			this.CurrentOrg = currentOrg;
			this.BillToSite = billToSite;
			this.ItemInfo = itemInfo;
			this.ItemDesc = itemDesc;
			this.Memo = memo;
			this.Project = project;
			this.ContactQtyPU = contactQtyPU;
			this.OrderPrice = orderPrice;
			this.TotalMnyTC = totalMnyTC;
			this.DescFlexField = descFlexField;
		}
		#region System Fields 
		//--系统字段,目前没有.EntityData上有相应的字段,用于保存相关的实体状态信息,DTO上没有状态信息.	
		#endregion
		
		#region DTO Properties 
	
		

		/// <summary>
		/// 销售合同DTO
		/// 销售合同行DTO.Misc.销售合同DTO
		/// </summary>
		private ufida.u9.ait.openapi.SaleContractAITDTOData m_saleContractAITDTO ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.SaleContractAITDTOData SaleContractAITDTO
		{
			get	
			{	
				return m_saleContractAITDTO ;
			}
			set	
			{	
				m_saleContractAITDTO = value ;	
			}
		}
			
		

		/// <summary>
		/// 销售单位
		/// 销售合同行DTO.Misc.销售单位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_tradeUOM ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData TradeUOM
		{
			get	
			{	
				return m_tradeUOM ;
			}
			set	
			{	
				m_tradeUOM = value ;	
			}
		}
			
		

		/// <summary>
		/// 税组合
		/// 销售合同行DTO.Misc.税组合
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_taxSchedule ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData TaxSchedule
		{
			get	
			{	
				return m_taxSchedule ;
			}
			set	
			{	
				m_taxSchedule = value ;	
			}
		}
			
		

		/// <summary>
		/// 供应组织
		/// 销售合同行DTO.Misc.供应组织
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_supplyOrg ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData SupplyOrg
		{
			get	
			{	
				return m_supplyOrg ;
			}
			set	
			{	
				m_supplyOrg = value ;	
			}
		}
			
		

		/// <summary>
		/// 起交日期
		/// 销售合同行DTO.Misc.起交日期
		/// </summary>
		private System.String m_startDate ;
		[DataMember(IsRequired=false)]
		public System.String StartDate
		{
			get	
			{	
				return m_startDate ;
			}
			set	
			{	
				m_startDate = value ;	
			}
		}
			
		

		/// <summary>
		/// 货主组织
		/// 销售合同行DTO.Misc.货主组织
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_shipperOrg ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData ShipperOrg
		{
			get	
			{	
				return m_shipperOrg ;
			}
			set	
			{	
				m_shipperOrg = value ;	
			}
		}
			
		

		/// <summary>
		/// 计价单位
		/// 销售合同行DTO.Misc.计价单位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_priceUOM ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData PriceUOM
		{
			get	
			{	
				return m_priceUOM ;
			}
			set	
			{	
				m_priceUOM = value ;	
			}
		}
			
		

		/// <summary>
		/// 料品分类
		/// 销售合同行DTO.Misc.料品分类
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_itemCategory ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData ItemCategory
		{
			get	
			{	
				return m_itemCategory ;
			}
			set	
			{	
				m_itemCategory = value ;	
			}
		}
			
		

		/// <summary>
		/// 行号
		/// 销售合同行DTO.Misc.行号
		/// </summary>
		private System.Int32 m_docLineNo ;
		[DataMember(IsRequired=false)]
		public System.Int32 DocLineNo
		{
			get	
			{	
				return m_docLineNo ;
			}
			set	
			{	
				m_docLineNo = value ;	
			}
		}
			
		

		/// <summary>
		/// 当前组织
		/// 销售合同行DTO.Misc.当前组织
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_currentOrg ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData CurrentOrg
		{
			get	
			{	
				return m_currentOrg ;
			}
			set	
			{	
				m_currentOrg = value ;	
			}
		}
			
		

		/// <summary>
		/// 立账位置
		/// 销售合同行DTO.Misc.立账位置
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_billToSite ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData BillToSite
		{
			get	
			{	
				return m_billToSite ;
			}
			set	
			{	
				m_billToSite = value ;	
			}
		}
			
		

		/// <summary>
		/// 料品信息
		/// 销售合同行DTO.Misc.料品信息
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfItemInfoData m_itemInfo ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfItemInfoData ItemInfo
		{
			get	
			{	
				return m_itemInfo ;
			}
			set	
			{	
				m_itemInfo = value ;	
			}
		}
			
		

		/// <summary>
		/// 料品描述
		/// 销售合同行DTO.Misc.料品描述
		/// </summary>
		private System.String m_itemDesc ;
		[DataMember(IsRequired=false)]
		public System.String ItemDesc
		{
			get	
			{	
				return m_itemDesc ;
			}
			set	
			{	
				m_itemDesc = value ;	
			}
		}
			
		

		/// <summary>
		/// 备注
		/// 销售合同行DTO.Misc.备注
		/// </summary>
		private System.String m_memo ;
		[DataMember(IsRequired=false)]
		public System.String Memo
		{
			get	
			{	
				return m_memo ;
			}
			set	
			{	
				m_memo = value ;	
			}
		}
			
		

		/// <summary>
		/// 项目
		/// 销售合同行DTO.Misc.项目
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_project ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData Project
		{
			get	
			{	
				return m_project ;
			}
			set	
			{	
				m_project = value ;	
			}
		}
			
		

		/// <summary>
		/// 合同数量
		/// 销售合同行DTO.Misc.合同数量
		/// </summary>
		private System.Decimal m_contactQtyPU ;
		[DataMember(IsRequired=false)]
		public System.Decimal ContactQtyPU
		{
			get	
			{	
				return m_contactQtyPU ;
			}
			set	
			{	
				m_contactQtyPU = value ;	
			}
		}
			
		

		/// <summary>
		/// 单价
		/// 销售合同行DTO.Misc.单价
		/// </summary>
		private System.Decimal m_orderPrice ;
		[DataMember(IsRequired=false)]
		public System.Decimal OrderPrice
		{
			get	
			{	
				return m_orderPrice ;
			}
			set	
			{	
				m_orderPrice = value ;	
			}
		}
			
		

		/// <summary>
		/// 价税合计
		/// 销售合同行DTO.Misc.价税合计
		/// </summary>
		private System.Decimal m_totalMnyTC ;
		[DataMember(IsRequired=false)]
		public System.Decimal TotalMnyTC
		{
			get	
			{	
				return m_totalMnyTC ;
			}
			set	
			{	
				m_totalMnyTC = value ;	
			}
		}
			
		

		/// <summary>
		/// 描述性弹性域
		/// 销售合同行DTO.Misc.描述性弹性域
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData m_descFlexField ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData DescFlexField
		{
			get	
			{	
				return m_descFlexField ;
			}
			set	
			{	
				m_descFlexField = value ;	
			}
		}
			
		#endregion	

		#region Multi_Fields
																																						
		#endregion 
	} 	
}
